package com.blb.thread;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
//            2. 实现一个线程，用于扫描某个目录下的所有文本文件（包括：java、txt、html），并将文字内容打印出来。
public class anli2 {
    public static void main(String[] args) {
        new Thread(() -> {
            File file = new File("D:\\imgs");
            readFile(file);
        }).start();

    }

    public static void readFile(File f) {

        if (f.isDirectory()) {
            File[] files = f.listFiles();
            if (files != null) {
                for (File file : files) {
                    readFile(file);
                }
            }
        } else {
            System.out.println(f.getName());
            //读文件
            try {
                //得到文件
                //得到文件读取的字符流
                FileReader fileReader = new FileReader(f);
                //得到带缓冲字符流
                BufferedReader bufferedReader = new BufferedReader(fileReader);
                String readLine = null;
                while ((readLine = bufferedReader.readLine()) != null) {
                    System.out.println(readLine);
                }
                //字节流
//				int ch = -1;
//				while((ch = bufferedReader.read()) != -1){
//					System.out.println((char)ch);
//				}
                fileReader.close();
                bufferedReader.close();
            } catch (Exception e) {
                e.printStackTrace();
            }

        }

    }

}

